home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Science / Asymptote Demo / Examples / Utility Scripts / drawdoublearrow < prev    next >
Text File  |  1994-05-07  |  1KB  |  44 lines

  1. % drawdoublearrow xstart ystart xend yend Label
  2. % Draw a double arrowheaded line with a label
  3.  
  4. % ARGUMENTS:
  5. %    xstart,ystart    -- x and y of start of line
  6. %    xend, yend    -- x and y of end of line
  7. %    Label        -- label for the center of the line
  8.  
  9. % DESCRIPTION:
  10. % Draw a line with arrow heads on both ends from
  11. % (xstart,ystart) to (xend, yend), place a label
  12. % in the center of the line and cap the ends of
  13. % the lines with a bar like this:
  14. %        |<-------Label----->|
  15. %
  16. % ----------------------------------------------------------
  17.  
  18. % Hide this window
  19. hide
  20.  
  21. % This is what we are going to use for the cap
  22. pointsymbol 2 cross
  23. % Find the rotation angle from the slope of the line
  24. rotation &1 &2 &3 &4
  25.  
  26. % Move to the center and draw the label
  27. moveto &1 &3 + 2 / &2 &4 + 2 /
  28. drawlabel above &5
  29. % Reposition the pen in the center
  30. moveto &1 &3 + 2 / &2 &4 + 2 /
  31. % Draw and arrow to one end
  32. drawarrowto &1 &2
  33. rotation rotation 90 +
  34. % Draw the end cap
  35. drawpoint
  36. rotation rotation 90 -
  37. % Move back to the center
  38. moveto &1 &3 + 2 / &2 &4 + 2 /
  39. % Draw the other arrow and end cap
  40. drawarrowto &3 &4
  41. rotation rotation 90 +
  42. drawpoint
  43. rotation rotation 90 -
  44.